﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using BadmintonApp.Entity;

namespace BadmintonApp.DAO.Interface
{
    public interface IUsersOfRoleDAO
    {
        /// <summary>
        /// 插入用户与角色的对应关系
        /// </summary>
        /// <param name="usersOfRoleInfo">用户与角色对应关系信息类</param>
        void InsertUsersOfRole(TUsersOfRoleInfo usersOfRoleInfo);

        /// <summary>
        /// 更新用户与角色的对应关系
        /// </summary>
        /// <param name="usersOfRoleInfo">用户与角色对应关系信息类</param>
        void UpdateUsersOfRole(TUsersOfRoleInfo usersOfRoleInfo);

        /// <summary>
        /// 删除用户与角色的对应关系
        /// </summary>
        /// <param name="id">关系ID</param>
        void DeleteUsersOfRole(int id);

        /// <summary>
        /// 根据用户ID获取用户与角色的对应关系列表
        /// </summary>
        /// <param name="userID">用户ID</param>
        /// <returns>用户与角色的对应关系列表</returns>
        DataSet GetUsersOfRoleByUserID(int userID);

        /// <summary>
        /// 根据角色ID获取用户与角色的对应关系列表
        /// </summary>
        /// <param name="roleID">角色ID</param>
        /// <returns>用户与角色的对应关系列表</returns>
        DataSet GetUsersOfRoleByRoleID(int roleID);

        /// <summary>
        /// 根据用户ID和角色ID获取用户与角色的对应关系列表
        /// </summary>
        /// <param name="userID">用户ID</param>
        /// <param name="roleID">角色ID</param>
        /// <returns>用户与角色对应关系信息类</returns>
        TUsersOfRoleInfo GetUsersOfRoleByUserIDAndRoleID(int userID, int roleID);

    }
}
